Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Інформація про навчальний заклад

ВУЗ:
Національний технічний університет України Київський політехнічний інститут
Інститут:
О
Факультет:
ІСМ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
Операційні системи

Частина тексту файла

Міністерство освіти і науки України Національний технічний університет України «Київський політехнічний інститут  ім. І. Сікорського» Кафедра автоматизації проектування енергетичних процесів і систем Лабораторна робота №6 з дисципліни «Операційні системи» «Система команд. Арифметичні команди. Обчислення цілочисельних арифметичних виразів з використанням команд MUL, IMUL, DIV, IDIV, ADD, ADC, INC, SUB, SBB, DEC, NEG, CBW, CWD» Варіант - 15 Мета роботи: програмування блоку обчислення арифметичних виразів на прикладі реалізації математичних формул з використанням арифметичних уоманд асемблера за індивідуальними завданнями. Завдання на виконання: Підготуйте і налагодьте програму для обчислення простих формул за зразком. Продемонструйте роботу програми під керуванням налагоджувача, прокоментуйте вміст обчислюваних змінних. Завдання за варіантом 15: Z = (c*d + 23) / (a/2 - 4*d - 1) Теоретична частина: Команди переміщення даних MOVe operand Пересилання операнда MOVe operand to/from system registers Пересилання операнда у системні регістри (або з них). Схема команди: MOV приймальник, джерело Призначення: пересилання даних між регістрами або регістрами та пам’яттю. Команда має обмеження: копіювання здійснюється з другого операнда у перший; значення другого операнда не змінююється; обидва оператора не можуть бути з пам’яті; лише один з операндів може бути сегментним, приймальником не може бути регістр CS; не можна пересилати сегментні регістри: MOV ES, DS Треба розписати: MOV AX, DS MOV ES, AX не можна напряму ініціалізувати сегмент даних, треба розписувати: MOV AX, DSEG MOV DS, AX довжина обох операндів повинна бути однаковою. Команда Mov має розширену можливість: для випадку, коли довжина операндів різна використовується директива заначення типу: Тип PTR вираз Оператор PTR може використовуватися з елементами даних, мітками інструкцій. Він використовує специфікатори типів Byte, Word, Dword, Tbyte для явного зазначення типу DB, DW, DD, DQ, DT для змінних. Він також використовує специфікатори типів NEAR, FAR, PROC для явного зазначення відстані до мітки перреходу. Таким чином, тип – це специфікатор типу,наприклад, BYTE, а вираз – це змінна або константа. Арифиметичні команди Команда складання ADD Синтаксис: ADD приймальник, джерело Символьний код: ADD регістр/пам’ять, регістр/пам’ять/безпосереднє значення Призначення: складання двох операндів джерела та приймальника розмірністю байт, слово або подвійне слово, записати результат складання за адресою першого операнда, встановити прапорці. Ця операція є коректною при використанні операндів: регістр-регістр, регістр-пам’ять, пам’ять-пам’ять, пам’ять-безпосереднє значення. Виконання команди додавання впливає на стан прапорців: CF (Carry)– перенесення (зі старшого знакового розряду; наприклад, для байта в 9-му розряді при виконанні команди додавання з’явилася 1), PF (Parity)– парність, AF (Auxiliary)- допоміжне перенесення, ZF (Zero)– нуль, SF (Sign)– мінус, OF (Overflow)– переповнювання. Команда ADD використовується для складання двох цілочисельних операндів. Якщо результат складання виходить за межі першого операнда (виникає переповнювання), то врахувати цю ситуацію слід шляхом аналізу прапорця CF і подальшого можливого застосування команди ADC. Наприклад, складемо значення в регістрі АХ і області пам'яті CHН. При складанні слід врахувати можливість переповнювання. ADD AX, CHH ; додати значення з області з пам’яті CHH до регістру AX ADD AX. CH ; додати регістр до регістра, результат записувала в АХ ADD EBX, DBLWORD ;додати подвійне слово з пам’яті до регістру ADD BL, 10 ; додати 10 до молодшої частини регістра BX Команда складання двох операндів з урахуванням перенесенням з молодшого розряда ADC Синтаксис: ADС приймальник, джерело. Символьний код: ADС регістр/пам’ять, регістр/пам’ять/безпосереднє значення Впливає на прапорці AF, CF, OF, PF, SF, ZF Результат заноситься у перший операнд, в залежності від результату встановлюються прапорці. Логіка роботи команди: <прий...
Антиботан аватар за замовчуванням

03.05.2023 19:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини